664fcb042dc0f78650ca25a58d6de69b1c0fe71d,src/net/spfbl/http/ServerHTTP.java,ServerHTTP,getDNSBLHTML,#Locale#Client#String#String#,1580
Before Change
} else {
builder.append(" Register a valid rDNS for this IP, which point to the same IP.<br>\n");
}
} else if ((probability = (distribution = SPF.getDistribution(query, true)).getSpamProbability(query)) > 0.01f) {
if (distribution.isBlacklisted(query) || Block.containsIP(query)) {
if (locale.getLanguage().equals("pt")) {
builder.append(" Este IP está listado por má reputação com ");
builder.append(Server.PERCENT_FORMAT.format(probability));
builder.append(" de pontos negativos do volume total de envio.<br>\n");
builder.append(" <br>\n");
builder.append(" Para que este IP possa ser removido desta lista,<br>\n");
builder.append(" é necessário que o MTA de origem reduza o volume de envios para os destinatários<br>\n");
builder.append(" cuja rejeição SMTP tenha prefixo '5XX 5.7.1 SPFBL <message>'.<br>\n");
builder.append(" <br>\n");
builder.append(" Cada rejeição SMTP com este prefixo gera automaticamente um novo ponto negativo neste sistema,");
builder.append(" onde este ponto expira em uma semana.<br>\n");
builder.append(" <br>\n");
builder.append(" O motivo da rejeição pode ser compreendida pela mensagem que acompanha o prefixo.<br>\n");
} else {
builder.append(" This IP is listed by bad reputation in ");
builder.append(Server.PERCENT_FORMAT.format(probability));
builder.append(" of negative points of total sending.<br>\n");
builder.append(" <br>\n");
builder.append(" In order for this IP can be removed from this list,<br>\n");
builder.append(" it is necessary that the source MTA reduce the sending volume for the recipients<br>\n");
builder.append(" whose SMTP rejection has prefix '5XX 5.7.1 SPFBL <message>'.<br>\n");
builder.append(" <br>\n");
builder.append(" Each SMTP rejection with this prefix automatically generates a new negative point in this system,");
builder.append(" where this point expires in a week.<br>\n");
builder.append(" <br>\n");
builder.append(" The reason for the rejection can be understood by the message that follows the prefix.<br>\n");
}
} else {
if (locale.getLanguage().equals("pt")) {
builder.append(" Este IP não está listado neste sistema porém sua reputação está com ");
builder.append(Server.PERCENT_FORMAT.format(probability));
builder.append(" de pontos negativos do volume total de envio.<br>\n");
builder.append(" <br>\n");
builder.append(" Se esta reputação tiver aumento significativo na quantidade de pontos negativos,");
builder.append(" este IP será automaticamente listado neste sistema.<br>\n");
builder.append(" <br>\n");
builder.append(" Para evitar que isto ocorra, reduza os envios cuja rejeição SMTP");
builder.append(" tenha prefixo '5XX 5.7.1 SPFBL <message>'.<br>\n");
builder.append(" <br>\n");
builder.append(" Cada rejeição SMTP com este prefixo");
builder.append(" gera automaticamente um novo ponto negativo neste sistema.<br>\n");
builder.append(" <br>\n");
builder.append(" O motivo da rejeição pode ser compreendida pela mensagem que acompanha o prefixo.<br>\n");
} else {
builder.append(" This IP is not listed in this system but its reputation is with ");
builder.append(Server.PERCENT_FORMAT.format(probability));
builder.append(" of negative points of total sending.<br>\n");
builder.append(" <br>\n");
builder.append(" If this reputation have significant increase in the number of negative points,");
builder.append(" this IP will automatically be listed in the system.<br>\n");
builder.append(" <br>\n");
builder.append(" To prevent this from occurring, reduce sending whose SMTP rejection");
builder.append(" has prefix '5XX 5.7.1 SPFBL <message>'.<br>\n");
builder.append(" <br>\n");
builder.append(" Each SMTP rejection with this prefix");
builder.append(" automatically generates a new negative point in this system.<br>\n");
builder.append(" <br>\n");
builder.append(" The reason for the rejection can be understood by the message that follows the prefix.<br>\n");
}
}
} else if (Block.containsIP(query)) {
if (locale.getLanguage().equals("pt")) {
builder.append(" E-mails para envio de chave de desbloqueio:");
} else {
builder.append(" E-mails to send unblock key:");
}
builder.append("<br>\n");
builder.append(" <ul>\n");
if (
client != null &&
client.hasPermission(DNSBL) &&
client.hasEmail()
) {
emailSet.add(client.getEmail());
}
TreeSet<String> sendSet = new TreeSet<String>();
String email = emailSet.pollFirst();
do {
builder.append(" <li><");
builder.append(email);
builder.append("> ");
if (NoReply.contains(email)) {
if (locale.getLanguage().equals("pt")) {
builder.append("não permitido.</li>\n");
} else {
builder.append("not permitted.</li>\n");
}
} else {
sendSet.add(email);
if (locale.getLanguage().equals("pt")) {
builder.append("permitido.</li>\n");
} else {
builder.append("permitted.</li>\n");
}
}
} while ((email = emailSet.pollFirst()) != null);
builder.append(" </ul>\n");
if (sendSet.isEmpty()) {
if (locale.getLanguage().equals("pt")) {
builder.append(" Nenhum e-mail do responsável pelo IP é permitido neste sistema.<br>\n");
} else {
builder.append(" None of the responsible for IP has e-mail permitted under this system.<br>\n");
}
} else {
builder.append(" <form method=\"POST\">\n");
if (locale.getLanguage().equals("pt")) {
builder.append(" Para que a chave de desbloqueio seja enviada,<br>\n");
builder.append(" selecione o endereço de e-mail do responsável pelo IP:<br>\n");
} else {
builder.append(" For the release key is sent,<br>\n");
builder.append(" select the responsible e-mail address of the IP:<br>\n");
}
for (String send : sendSet) {
builder.append(" <input type=\"checkbox\" name=\"identifier\" value=\"");
builder.append(send);
builder.append("\">");
builder.append(send);
builder.append("<br>\n");
}
if (Core.hasRecaptchaKeys()) {
builder.append(" <br>\n");
if (locale.getLanguage().equals("pt")) {
builder.append(" Para que sua solicitação seja aceita,<br>\n");
builder.append(" resolva o desafio reCAPTCHA abaixo.<br>\n");
} else {
builder.append(" For your request is accepted,<br>\n");
builder.append(" solve the reCAPTCHA below.<br>\n");
}
String recaptchaKeySite = Core.getRecaptchaKeySite();
String recaptchaKeySecret = Core.getRecaptchaKeySecret();
ReCaptcha captcha = ReCaptchaFactory.newReCaptcha(recaptchaKeySite, recaptchaKeySecret, false);
builder.append(" ");
builder.append(captcha.createRecaptchaHtml(null, null).replace("\r", ""));
// novo reCAPCHA
// builder.append(" <div class=\"g-recaptcha\" data-sitekey=\"");
// builder.append(recaptchaKeySite);
// builder.append("\"></div>\n");
}
if (locale.getLanguage().equals("pt")) {
builder.append(" <input type=\"submit\" value=\"Solicitar\">\n");
} else {
builder.append(" <input type=\"submit\" value=\"Request\">\n");
After Change
}
if (Core.hasRecaptchaKeys()) {
builder.append(" <br>\n");
if (locale.getLanguage().toLowerCase().equals("pt")) {
builder.append(" Para que sua solicitação seja aceita,<br>\n");
builder.append(" resolva o desafio reCAPTCHA abaixo.<br>\n");
} else {
builder.append(" For your request is accepted,<br>\n");
builder.append(" solve the reCAPTCHA below.<br>\n");
}
String recaptchaKeySite = Core.getRecaptchaKeySite();
String recaptchaKeySecret = Core.getRecaptchaKeySecret();
ReCaptcha captcha = ReCaptchaFactory.newReCaptcha(recaptchaKeySite, recaptchaKeySecret, false);
builder.append(" ");
builder.append(captcha.createRecaptchaHtml(null, null).replace("\r", ""));
// novo reCAPCHA
// builder.append(" <div class=\"g-recaptcha\" data-sitekey=\"");
// builder.append(recaptchaKeySite);
// builder.append("\"></div>\n");
}
if (locale.getLanguage().toLowerCase().equals("pt")) {
builder.append(" <input type=\"submit\" value=\"Solicitar\">\n");
} else {
builder.append(" <input type=\"submit\" value=\"Request\">\n");